System and method for reconfiguration of an entertainment system controlling device

ABSTRACT

An entertainment device initiates a configuration process of a controlling device in response to a change in an audio visual entertainment system configuration in which at least one of a plurality devices is connected to the entertainment device as an audio and/or visual source and at least one of the plurality of devices is connected to the entertainment device as an audio and/or visual output destination for the entertainment device.

RELATED APPLICATION DATA

This application claims the benefit of and is a continuation of U.S.application Ser. No. 16/045,309, filed on Jul. 25, 2018, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 15/786,852, filed on Oct. 18, 2017, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 14/167,619, filed on Jan. 29, 2014, whichapplication claims the benefit of and is a continuation-in-part of U.S.application Ser. No. 13/785,015, filed on Mar. 5, 2103, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 12/621,277, filed on Nov. 18, 2009, whichapplication claims the benefit of and is a continuation-in-part of U.S.application Ser. No. 12/569,121 filed Sep. 29, 2009, the disclosures ofwhich are incorporated herein by reference in the entirety.

BACKGROUND

Home entertainment systems in which multiple media sources and multiplemedia rendering devices are coupled through a central routing devicesuch as an AV receiver are well known in the art, as are universalcontrolling devices adaptable to issue commands to a multiplicity ofappliances of different manufacture and/or type and which are frequentlyassociated with such home entertainment systems. As these homeentertainment systems become increasingly complex due to theproliferation of media formats, appliance types, etc., the user actionsrequired to configure a home entertainment system to match a desiredactivity such as watching TV or listening to music have becomeincreasing onerous and error prone. Various methods have been proposedfor automating all or part of these configuration operations, forexample through use of controlling device based macro sequences such asdescribed in U.S. Pat. No. 5,959,751 or state-based control such asdescribed in U.S. Pat. No. 7,784,805. However, such methods maythemselves be subject to error when equipment configurations orconnections are not as expected, leading only to further userfrustration.

SUMMARY

This disclosure relates generally to improved methods for configuring amulti-input and/or multi-output home entertainment system to match auser's desired activities and/or to a method for configuring acontrolling device. In such systems, the outputs and inputs of thevarious components are generally routed to and switched through onecentral device such as an AV receiver. The inventive methods describedherein comprise a cooperative effort between the AV receiver and anassociated universal controlling device such as a remote control inwhich activation of an activity key or button on the controlling deviceresults in transmission of a signal to the AV receiver to initiatecertain previously defined configuration actions, which actions may beconditioned upon the AV receiver's determination of the current statusof connected devices. In addition, certain controlling device commandtransmissions to other appliances in the home entertainment system mayalso be initiated as a result of said activity key activation, eitherunilaterally by the controlling device or at the request of the AVreceiver. Since the AV receiver has access to appliance statusinformation not available to the controlling device (by virtue of the AVreceiver's physical connection to those appliances), and the controllingdevice in turn has access to appliance command functions not availableto the AV receiver, the cooperative execution of an activityconfiguration request in this manner may result in more reliable anduser-friendly system operation. In addition, since prior art initialuser set up of AV receivers is generally GUI based and includesassignment of user-friendly names to source and destination appliances(for example, “DVD” in place of “Video input 3”), a user's initialspecification of desired activity configurations may be facilitated bythe use of these features when configuring activities.

A better understanding of the objects, advantages, features, propertiesand relationships of the subject disclosure will be obtained from thefollowing detailed description and accompanying drawings which set forthillustrative embodiments and which are indicative of the various ways inwhich the principles of the subject disclosure may be employed.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the various aspects of the subjectdisclosure, reference may be had to preferred embodiments shown in theattached drawings in which:

FIG. 1 illustrates an exemplary system in which the methods of thesubject disclosure may be practiced;

FIG. 2 further illustrates an exemplary controlling device of the systemof FIG. 1;

FIG. 3 illustrates a block diagram of exemplary components of theexemplary controlling device of FIG. 2;

FIG. 4 illustrates a block diagram of exemplary components of an AVreceiver of the system of FIG. 1;

FIG. 5 illustrates an exemplary activity configuration setup process inaccordance with the methods of this subject disclosure;

FIG. 6 illustrates an exemplary activity switching process in accordancewith the methods of this subject disclosure;

FIG. 7 illustrates a second exemplary activity configuration setupprocess in accordance with the methods of this subject disclosure;

FIG. 8 illustrates an exemplary method for causing a configuring of acontrolling device in response to an appliance change being detected bythe AV receiver; and

FIG. 9 illustrates exemplary help information which may be presented toa user when it is detected that an appliance is not responding correctlyto command requests.

DETAILED DESCRIPTION

Turning now to FIG. 1, there is illustrated an exemplary homeentertainment system in which the audio/video outputs of a group ofvarious media source appliances such as for example a set top box(“STB”) 104, a first DVD player 106, a second DVD player 108, a gameconsole 110, and a CD changer 112 are all connected as inputs to an AVreceiver 102. AV receiver 102 in turn functions to switch the currentlydesired input media stream to one or more designated outputs of AVreceiver 102 which are, in turn, connected to various audio and/or videorendering devices such as TV 114, projector 118, and/or loudspeakers116; all as is well known in the art. In some embodiments AV receiver102 may also include a network interface 120, for example Ethernet, forthe routing of streaming media input/output from or to other areas ofthe home. When included, such a network interface may also be availablefor Internet access, download of firmware updates and/or other data intoAV receiver 102, etc., again as well known in the art. Also illustratedis a universal controlling device 100 which is capable of transmittingcommands to the appliances, using any convenient IR, RF, Point-to-Point,or networked protocol, to cause the appliances to perform operationalfunctions. While illustrated in the context of a home entertainmentsystem, it is to be understood that appliances controllable by universalcontrolling device 100 may include, but need not be limited to,televisions, VCRs, DVRs, DVD players, cable or satellite converterset-top boxes (“STBs”), amplifiers, AV receivers, CD players, gameconsoles, home lighting, drapery, fans, HVAC systems, thermostats,personal computers, etc. In a preferred embodiment, controlling device100 supports bidirectional communication 130 with AV receiver 102 viaany convenient IR or RF protocol.

In an exemplary embodiment, controlling device 100 may be furtheradapted to function in cooperation with AV receiver 102 to configure theillustrative entertainment system in accordance with a user's desiredactivities. To this end, as illustrated in FIG. 2, an exemplarycontrolling device may be provisioned with a series of activityselection keys or buttons 200 with designations such as, for example,“Watch TV”, “Watch a Movie”, “Listen to Music”, “Play a Game”, etc.Activation of such an activity selection key may cause AV receiver 102and/or controlling device 100 to cooperatively place the exemplary homeentertainment system into a user-specified state which has beenassociated with that activity, as will be described in further detailhereafter.

Turning now to FIG. 3, for use in commanding the functional operationsof one or more appliances, the controlling device 100 may include, asneeded for a particular application, a processor 300 coupled to a ROMmemory 304, a RAM memory 305, a key matrix 316 (e.g., hard keys, softkeys such as a touch sensitive surface overlaid on a liquid crystal(LCD), and/or an electroluminescent (EL) display), transmissioncircuit(s) and/or transceiver circuit(s) 310 (e.g., IR and/or RF), anon-volatile read/write memory 306, a means 302 to provide feedback tothe user (e.g., one or more LEDs, display, speaker, and/or the like), aninput/output port 318 such as a serial interface, USB port, modem,Zigbee, WiFi, or Bluetooth transceiver, etc., and clock and timer logic312 with associated crystal or resonator 314.

As will be understood by those skilled in the art, some or all of thememories 304, 305, 306 may include executable instructions(collectively, the controlling device program memory) that are intendedto be executed by the processor 300 to control the operation of theremote control 100, as well as data which serves to define to theoperational software the necessary control protocols and command valuesfor use in transmitting command signals to controllable appliances(collectively, the command data). In this manner, the processor 300 maybe programmed to control the various electronic components within theremote control 100, e.g., to monitor the key matrix 316, to cause thetransmission of signals, etc. The non-volatile read/write memory 306,for example an EEPROM, battery-backed up RAM, FLASH, Smart Card, memorystick, or the like, may additionally be provided to store setup data andparameters as necessary. While the memory 304 is illustrated anddescribed as a ROM memory, memory 304 can also be comprised of any typeof readable media, such as ROM, FLASH, EEPROM, or the like. Preferably,the memories 304 and 305 are non-volatile or battery-backed such thatdata is not required to be reloaded after battery changes. In addition,the memories 304, 305 and 306 may take the form of a chip, a hard disk,a magnetic disk, an optical disk, and/or the like. Still further, itwill be appreciated that some or all of the illustrated memory devicesmay be physically combined (for example, a single FLASH memory may belogically partitioned into different portions to support thefunctionality of memories 304 and 306 respectively), and/or may bephysically incorporated within the same IC chip as the microprocessor300 (a so called “microcontroller”) and, as such, they are shownseparately in FIG. 3 only for the sake of clarity.

To cause the controlling device 100 to perform an action, thecontrolling device 100 is adapted to be responsive to events, such as asensed user interaction with the key matrix 316, etc. In response to anevent, appropriate instructions within the program memory (hereafter the“controlling device operating program”) may be executed. For example,when a function key is actuated on the controlling device 100, thecontrolling device 100 may retrieve from the command data stored inmemory 304, 305, 306 a command value and control protocol correspondingto the actuated function key and, where necessary, current device modeand transmit that command to an intended target appliance, e.g., STB104, in a format recognizable by that appliance to thereby control oneor more functional operations of that appliance. It will be appreciatedthat the operating program can be used not only to cause thetransmission of commands and/or data to the appliances, but also toperform local operations. While not limiting, local operations that maybe performed by the controlling device 100 may include displayinginformation/data, favorite channel setup, macro key setup, function keyrelocation, etc. Examples of local operations can be found in U.S. Pat.Nos. 5,481,256, 5,959,751, and 6,014,092.

For selecting sets of command data to be associated with the appliancesto be controlled data may be provided to controlling device 100 thatserves to identify each intended target appliance by its make, and/ormodel, and/or type. Such data allows the controlling device 100 toidentify the appropriate command data set within a library of commanddata that is to be used to transmit recognizable commands in formatsappropriate for such identified appliances. Such a library of commanddata may be preprogrammed in controlling device 100, downloaded intocontrolling device 100 as part of the setup process, or a combinationthereof. The library of command data may represent a plurality ofcontrollable appliances of different types and manufacture, a pluralityof controllable appliances of the same type but different manufacture, aplurality of appliances of the same manufacture but different type ormodel, etc., or any combination thereof as appropriate for a givenembodiment. In certain embodiments, such data used to identify anappropriate command data set may take the form of a numeric setup code(obtained, for example, from a printed list of manufacturer names and/ormodels with corresponding code numbers, from a support Web site, etc.)which may be entered via activation of those keys that are also used tocause the transmission of commands to an appliance, preferably the keysthat are labeled with numerals.

Alternative device setup procedures known in the art include scanningbar codes, RFID tags, or other indicia; sequentially transmitting apredetermined command in different formats until a target applianceresponse is detected; interaction with a Web site culminating indownloading of command data and/or setup codes to the controllingdevice, etc. Further, in embodiments such as that illustrated in FIG. 1,set up of a controlling device 100 may be performed interactively inconjunction with AV receiver 102, using a connected device such as TV114 for GUI display and a database of codes and/or brand and modelinformation stored locally on AV receiver 102 or located remotely on aPC or Web server and accessed via network connection 120. Since suchmethods for setting up a controlling device to command the operation ofspecific home appliances are well-known, these will not be described ingreater detail herein. Nevertheless, for additional informationpertaining to setup procedures, the reader may turn, for example, toU.S. Pat. Nos. 4,959,810, 5,614,906, or 6,225,938 or to pending U.S.patent application Ser. No. 11/915,562, all of like assignee and allincorporated herein by reference in their entirety.

With reference to FIG. 4, an exemplary AV receiver 102 may include, asneeded for a particular application, a control processor 400 coupled toa memory 402 which may comprise any combination of ROM, RAM, and/ornon-volatile read write memory; video and audio processing sections 404,406; a tuner 408 for reception of radio broadcast channels; a frontpanel 410 including user controls and/or a display; a remote controlinterface 412 for communicating with a controlling device (e.g. 100); anetwork interface 414 for communication with a local and/or wide areanetwork; audio inputs 420 a through 420 c; video inputs 424 a through424 c; AV inputs 422 a through 422 c; audio outputs 430 a, 430 b; andvideo outputs 434 a and 434 b. As will be appreciated, audio and videoinputs and outputs (which may be more or less in number thanillustrated) may comprise analog or digital signals and exemplary AVreceiver 102 may be provisioned with analog-to-digital (ADC) converters,digital-to-analog (DAC) converters, video decoders, HDMIencoder/decoders, CODECs, format converters, etc., all as necessary toimplement the input/output switching and routing functionality. It willbe further appreciated that the functionality of video and audioprocessing blocks 404 and 408 may be implemented in separate componentssuch as a specialized digital signal processors (DSP), may beimplemented as part of control processor 400, or any combinationthereof, and that portions of memory 402 may be allocated to orassociated with audio and video processing blocks 404,408.

It will also be appreciated that some or all of the memory elements 402may take the form of a chip, a hard disk, a magnetic disk, an opticaldisk, FLASH memory, and/or the like, and that all or portion of thememory 402 may be physically incorporated within the same IC chip as thecontrol processor 400 and/or audio or video processing blocks 404,406and, as such, memory 402 is shown separately in FIG. 4 only for the sakeof clarity.

As will be understood by those skilled in the art, some or all of thememory 402 may include executable instructions that are intended to beexecuted by the processor 400 to control the operation of the AVreceiver 102 (hereafter, the “AV receiver operating program”). In thismanner, the processor 400 may be programmed to control the variouselectronic components within the AV receiver, e.g., to monitor the frontpanel 410 and or remote control interface 412, to cause the routing ofvideo and/or audio signals between the various inputs and outputs, tocontrol selection of radio broadcast channel by tuner 408, to controlvolume and equalization settings of audio outputs 430 a and 430 b, etc.Further, the AV receiver operating program, in conjunction with videoprocessing block 404, may provide GUI-based setup menus for AV receiverfunctions such as input and output assignments, levels, balances,equalization, etc., via a connected video monitor device such as forexample TV 114. Since such GUI-based AV receiver setup is well known inthe art, for the sake of brevity it will not be described furtherherein, however if greater detail is desired regarding such features andfunctionality the interested reader may reference, for example, adocument such as the Denon AV Surround Receiver STR-DA5500ES Owner'sManual (D&M Holdings Inc. publication number 5411 10255 000D).

In addition, in an exemplary embodiment described herein the AV receiveroperating program may include programming which functions in cooperationwith controlling device 100 to define and subsequently executeuser-desired configuration of the home entertainment system inaccordance with various activities.

With reference to FIG. 5, after completing the initial set up of AVreceiver 102, for example as described in the above referenced DenonSTR-DA5500ES User's Manual, a user may wish to configure thefunctionality of the activity buttons 200 of controlling device 100. Tothis end, she may place the AV receiver into an activity setup mode via,for example by a sequence of keypresses on controlling device 100, useof navigation keys 210 of controlling device 100 to select a menu itemdisplayed on TV 114, or such other action as may be appropriate for aparticular embodiment. Upon entering activity setup mode, the AVreceiver operating program may display an exemplary initial statusmessage 530 on TV 114 prompting the user to select an activity toconfigure. The AV receiver operating program thereafter waits at step502 for user input, i.e. activation of one of the activity buttons 200of controlling device 100. In the illustrated example, the user mayselect button 202 labeled “Watch a Movie”, resulting in communication bythe controlling device 100 of an appropriate key command value to AVreceiver 102. Upon receipt of the “Watch a Movie” activity command, atstep 504 the AV receiver operating program may display a listing 532 ofavailable source devices that are known to be connected to inputs 422,424 of AV receiver 102. In this context it will be appreciated that theearlier-mentioned initial setup procedures of AV receiver may includeuser labeling/identification of the devices connected to the variousinputs together with a selection of compatible command data sets withinuniversal controlling device 100, and the resulting user friendly labelssuch as “DVD player”, “Projector”, etc. may be used thereafter in thegeneration of displays such as that illustrated at 532. Additionally,the displayed listing may be further tailored by the AV receiveroperating program to include only those currently-configured devicesknown to be compatible with the specified activity—for example, for thepresently illustrated “Watch a Movie” activity devices which areincapable of sourcing a video stream, such as CD player 112 or tuner 408may be omitted from the list presented to the user. At step 506, theuser may employ navigation keys 210 of controlling device 100 to move acursor 536 and select desired source device(s). One or more sourcedevices may be selected, as indicated for example by indicia 534. In theevent more than one source device is designated, the user may beprompted at activity execution time to select the desired source, aswill be described in further detail hereafter in conjunction with FIG.6.

Upon completion of source device selection, at step 508 a list 538 ofpossible destination devices may be displayed for user selection at step510 in a similar manner to that described above. Once again, the list ofdevices may be tailored by the AV receiver operating program to include,in this case, only those currently-configured devices known to becapable of rendering the designated input media stream(s). Although notshown, it will be appreciated that other configuration options may alsobe presented to the user in certain embodiments, for example, selectionof a destination for audio output. Once all user selections have beenmade, at step 512 the activity configuration parameters may be finalizedand stored in AV receiver memory 402 for future use in configuring thehome entertainment system when the indicated activity is called for,e.g., the final configuration is stored and associated with the receivedkey command value corresponding to the activity key that was activatedat the start of the configuration process. Thereafter, the AV receiveroperating program may display a completion message 540, including inthis example a reminder 542 that final source selection will be requiredat execution time. At step 516, the user indicates whether she wishes toset up another activity, in which case processing returns to initialstep 502. If not, activity setup is complete and the AV receiveroperating program exits setup mode and returns to normal operation.

The execution of an exemplary activity configuration request will now bediscussed in conjunction with FIG. 6. Upon actuation of an activitybutton on controlling device 100, for example 202 “Watch a Movie” andreceipt of the resulting appropriate key command value communication byAV receiver 102, assuming the AV receiver operating program is in thenormal operation state (i.e. not in setup mode as described previously),at step 602 the AV receiver operating program first determines if theactivity by the key command value received from the controlling devicehas in fact been configured. If not, at step 624 an error message isdisplayed, for example on TV 114, prompting the user to first configurethat activity, and the activity request is ignored. If the activity hasbeen configured, at step 604 the AV receiver operating program nextdetermines from the configuration associated with the received keycommand value if multiple sources were configured. If so, at step 606the options are displayed as illustrated at 630 and the user is promptedto select a desired source device, for example, by using the navigationand selection keys of the controlling device to highlight and select thedesired source device. As will be appreciated, if only one source devicewas configured at setup time, this step may be skipped. Once a sourcedevice has been designated, at step 608 the AV receiver operatingprogram selects the audio, video and/or AV inputs associated with thedesignated source device. At step 610, the AV receiver operating programdetermines if the selected source device is powered on, for example bydetecting presence or absence of audio/video signal, sensing HDMIstatus, etc. as appropriate for the device connection in question.Alternatives such as power sensing, etc. may also be available incertain embodiments. If the selected source device is not powered on, ina preferred embodiment at step 612 a request may issued to controllingdevice 100 via bidirectional communication link 130 to transmit a “poweron” command to the source appliance. As will be appreciated, such arequest would include data that functions to indicate to the controllingdevice 100 the intended target appliance for the “power on” command.Thereafter, at step 614 the AV receiver operating program determines ifmultiple destinations were configured. If so, at step 616 the optionsare displayed as illustrated at 632 and the user prompted to select adesired destination device as described above. Again, if only onedestination device was configured at setup time, this step may beskipped. At step 618, the AV receiver operating program determines ifthe selected destination device is powered on, for example by sensingHDMI status. Alternatives such as detection of AV signals from anauxiliary output of a rendering device, power sensing, etc. may also beavailable in certain embodiments. If the selected destination device isnot powered on, in a preferred embodiment at step 620 a request may beissued to controlling device 100 via bidirectional communication link130 to transmit a “power on” command to the destination appliance.

While initiation of a “Watch a Movie” activity via key 202 may result inautomatic configuration of keys of the controlling device, e.g.,transport keys 240 may be configured to transmit commands in a formatcompatible with whichever of appliances 104, 106, 108 have beenpre-configured as the media source within the remote control when in the“Watch a Movie” activity mode, in the event that multiple possiblesources (or destinations) are possible in the “Watch a Movie” activitymode (which does not allow for a pre-configuration of the keys of thecontrolling device to a particular appliance), at step 622 dataindicative of the appliances to be controlled in the currently selectedactivity mode may be transferred over bidirectional communication link130 from the AV receiver operating program to controlling device 100 tocause the controlling device to configure itself to match the activityand selected source and destination appliances. It will also beappreciated that keys of the controlling device 100 may, in whole or inpart, be matched to an intended target appliance as a result of receiptof the aforementioned requests to power-on a device and, as such, step622 can be skipped if this data has already been provided to thecontrolling device by the AV receiver.

Although not illustrated in the example of FIG. 6, in certainembodiments additional appliance configuration may be initiated by theAV receiver operating program and/or the controlling device operatingprogram and performed by controlling device 100, for example issuance ofcommands for selection of an appropriate input on TV 114 or projector118, adjustment of video aspect ratio or picture settings to optimizepresentation of the selected source material, etc. Also, additionalactions may be initiated by the AV receiver operating program and/or thecontrolling device operating program with respect to appliances notparticipating in an activity. For example, initiation of a “Listen toMusic” activity may cause the controlling device itself, or result inthe issuance of requests to controlling device, to power off videodisplay devices such as TV 114 or projector 118.

In addition to the interactions with AV receiver 102 described above, incertain embodiments the activation of an activity selection button 200may also invoke a conventional controlling device-based macro commandsequence as is known in the art and described, for example, in thepreviously referenced U.S. Pat. No. 5,959,751. Such macro sequences maybe programmed by a user to, for example, adjust lighting levels, controldrapes, etc. to create an environment suitable for the commandedactivity, as well as to perform additional entertainment applianceconfiguration functions if desired.

Turning now to FIG. 7, in an alternative embodiment, a PC based activitysetup application may be offered in place of or as an alternative to theAV receiver GUI based setup previously described above in conjunctionwith FIG. 5. Such a PC based setup option may comprise a locallyinstalled application program, a Web application, or a combinationthereof. As illustrated in FIG. 7, the PC based setup application maycomprise a GUI 700 which offers a series of drop-down menus 702, 704from which the various configuration options may be selected. In theillustrative example, separate panels 706 and 708 allow selection andconfiguration of sources and outputs of an activity and selection andassignment of appliance/controlling device key functionality for thatactivity, respectively. As will be understood by those of skill in theart, in general two drop-down menus such as 710 and 716 may not beactive the same time, they are however illustrated as such in FIG. 7 toassist in a better understanding of the PC application. Drop down menupanel 706 may offer AV receiver related activity configuration choicessimilar to those previously described in conjunction with FIG. 5, and,to avoid repetition, these will not be repeated. In the illustratedexemplary embodiment, drop down menu panel 708 allows the controllingdevice key groups for volume control, channel changing and transport tobe pre-configured as appropriate. As an aid to the user, in someembodiments an image 712 of controlling device 100 may be displayed withthe affected key group highlighted—for example, when the drop down menu710 for transport keys is active, this group of keys 714 may behighlighted in displayed image 712. In some embodiments, default keyassignments may be dynamically established and displayed in panel 708 bythe PC application based upon the current activity configurationsettings. By way of example, if audio output for an activity is assignedto a set of speakers 718 connected to the output of AV receiver, thedefault volume key assignment 722 may be the AV receiver, whereas if theaudio output for the same activity were to be assigned to the TV device720, the default volume control key assignment may be the TV device. Inthis context, it will be appreciated that in certain embodimentsprovision may be made for uploading existing activity configurationsettings from an AV receiver into the PC application for editing by auser, in which instance the existing values may become the defaultsettings. It will be appreciated that in instances where more than oneinput or output device has been selected for an activity and the finalchoice is to be made at execution time as previously described, some orall of the drop down menu items in key configuration panel 708 may beomitted or replaced with generic designators such as “Audio destinationdevice” or “Video source”, etc.

Once all aspects of the activities match a user's requirements, the usermay cause the resulting configuration data to be downloaded into theexemplary AV receiver 102, for example via network interface 120 if boththe PC and AV receiver are connected to the same network. Alternatively,configuration data may be uploaded to a remote server for subsequentdownload to the AV receiver, copied to a memory stick or smart card forphysical transfer, etc. Additionally, controlling device 100 may becoupled to the PC and become the repository for some or all of theconfiguration data, either for later transfer to AV receiver 102, or fordirect action by controlling device 100.

In certain embodiments, the operating software of AV receiver 102 may beadapted to detect changes in connected appliances, for example bymonitoring disconnection and/or reconnection of interface cabling, byobserving changes in source or sink equipment identity or capabilitydata reported over an HDMI or other digital connection, by noting analteration in the bit rate or format of an input data stream, bydetecting connection of an interface cable or presence of a newaudio/video signal at a previously unused AV receiver input, or anyother appropriate method. The operating software of AV receiver 102 maythen respond to a detected change in the appliances connected thereto bytransmitting to the controlling device 100 a command communication forthe purpose of initiating at the controlling device 100 a setupprocedure whereby the controlling device 100 will, with the cooperationwith the AV receiver 102, attempt to configure itself to transmitcommands to one or more of the connected appliances for the purpose ofcontrolling functional operations of the one or more of the connectedappliances. For example, as illustrated in FIG. 8, the controllingdevice 100 may response to the command communication sent by the AVreceiver 102 by initiating a setup procedure in which the controllingdevice 100 transmits to an intended target appliance one or morecommands from various command sets for the purpose of causing theintended target appliance to transition into a state that is detectableby the AV receiver 102. When the AV receiver 102 detects that theintended target appliance responds to a command from a command set astransmitted by the controlling device 100, the AV receiver will transmitto the controlling device 100 a command to cause the controlling device100 to stop transmitting commands at which time the controlling device100 will configure itself to use the command set from which the responseeliciting command was sent, i.e., the command set having the lastcommand transmitted, when the controlling device 100 is thereafterplaced into a mode that is intended to control functional operations ofthat intended target appliance. In some instances, the command that istransmitted to the controlling device 100 from the AV receiver 102 forthe purposes of initiating this auto-configuration process may includedata, if available, that functions to inform the controlling device 100of the type of an appliance (e.g., TV, DVD player, etc.), and/or themake of the appliance (e.g., “Sony” brand, “Samsung” brand, etc.)whereby the controlling device 100 can use such provided information toremove from the command sets to be tested those command sets that arenot relevant to the appliance information so provided. It will also beunderstood that, if the type and/or make information provided by the AVreceiver 102 corresponds to only one possible command set, thecontrolling device 100 may simply configure itself to use that commandset when the controlling device 100 is thereafter placed into a modethat is intended to control functional operations of that intendedtarget appliance and thus may skip the testing, auto-configurationprocess described above. To the extent that the AV receiver might bewaiting for the controllable device to be placed into a state as part ofthe configuration process, the controlling device may use that commandset to issue a command to the controllable device to thereby place thecontrollable device into that state so the AV receiver will no longer belooking for that state and, accordingly, allow the AV receiver to exitthe configuration monitoring mode. It will also be understood that thecommand sets to be tested may be provided to the controlling device 100from an external source, such as server, a cable box, the AV receiver,or the like, as a part of the configuration process (with theunsuccessfully tested command sets then possibly being removed fromcontrolling device 100 upon completion of the configuration process),may be pre-stored in the controlling device 100 before the configurationprocess commences, or the like. It will be further understood that onlythe commands to be tested from the command sets could be provided to thecontrolling device 100 as a part of the configuration process with theentire command set that includes the command that elicited the desiredresponse being thereafter provided to the controlling device uponcompletion of the configuration process (with the testing commands thenpossibly being removed from the controlling device 100 upon completionof the configuration process).

In a further embodiment, the operating software of controlling device100 may be adapted to always echo certain commands to AV receiver 104,that is, upon actuation of certain functional keys, controlling device100 may sequentially transmit first a keypress notification to AVreceiver 104 and thereafter the appropriate command data in the formatrecognizable by the current target appliance. Using the receivedkeypress notification data, the operating software of AV receiver 104may be adapted to monitor the AV inputs and outputs for the expectedresult of a user appliance command. If the expected result does notoccur, an error message may be displayed to prompt the user to retry thecommand, check the operating mode of controlling device 100, etc. Forexample, if the currently selected activity is “Watch a Movie” and theoperating software of AV receiver 104 is notified by controlling device100 that the “Play” key 204 has been actuated, the operating software ofAV receiver 104 may inspect the DVD player input to discern if acorresponding change in AV input data has occurred, for example an audiocomponent has become present in a digital data stream where there wasnone before. Alternatively, the operating software may monitor thereported user activity on controlling device 100 for patterns indicativeof a problem. For example, repeated actuation of the “Play” key 204within a short space of time may indicate that an expected applianceresponse has not occurred. In either case, a message such as illustratedin FIG. 9 may be presented on a connected display such as TV 114 toassist the user in resolving the problem.

While various concepts have been described in detail, it will beappreciated by those skilled in the art that various modifications andalternatives to those concepts could be developed in light of theoverall teachings of the disclosure. For example, while described in thecontext of an AV receiver acting a central switching point for contentstreams in a home entertainment system, it will be appreciated that anyother suitably equipped device, for example an advanced cable orsatellite STB, a personal computer, etc., may be substituted for an AVreceiver in the practice of the subject disclosure. Further, while apreferred embodiment described above comprises a controlling devicecapable of bidirectional communication with an AV receiver or othercentral switching device, it will be appreciate to that many of thesteps of the inventive methods may also be practiced in a systemcomprising a controlling device which is in unidirectional (inward)communication with the central switching device, in which case certaincontrolling device actions may be initiated autonomously as macrosequences using, for example, discrete appliance commands as are know inthe art. Furthermore, in the case of a unidirectional controllingdevice, it is contemplated that, in lieu of receiving applianceindicating data from the AV receiver, the controlling device may beprogrammed whereby activation of a particular device mode key, e.g.,cable, DVD, game player, etc., is used by the controlling device toconfigure groups of keys of the controlling device to communicatecommands to a one of plural possible sources and/or destinationappliances in a give activity mode, for example by activating thedesired mode key(s) within a predetermined period of time afteractivation of the activity mode key when used to place the controllingdevice and AV receiver into that activity mode. Activation of a devicemode key in this manner may also be used to cause the transmission ofdata to the AV receiver to thereby cause the AV receiver to select oneof multiple possible sources and/or destinations in lieu of the menunavigation/selection method that was also previously described.

Still further, while described in the context of functional modules andillustrated using block diagram format, it is to be understood that,unless otherwise stated to the contrary, one or more of the describedfunctions and/or features may be integrated in a single physical deviceand/or a software module, or one or more functions and/or features maybe implemented in separate physical devices or software modules. It willalso be appreciated that a detailed discussion of the actualimplementation of each module is not necessary for an enablingunderstanding of the subject disclosure. Rather, the actualimplementation of such modules would be well within the routine skill ofan engineer, given the disclosure herein of the attributes,functionality, and inter-relationship of the various functional modulesin the system. Therefore, a person skilled in the art, applying ordinaryskill, will be able to practice the subject disclosure set forth in theclaims without undue experimentation. It will be additionallyappreciated that the particular concepts disclosed are meant to beillustrative only and not limiting as to the scope of the subjectdisclosure which is to be given the full breadth of the appended claimsand any equivalents thereof.

All patents cited within this document are hereby incorporated byreference in their entirety.

What is claimed is:
 1. A method for configuring a controlling deviceadapted to communicate with a first controllable appliance, comprising:detecting by the first controllable appliance that an interfacecomponent of the first controllable appliance has been newly connectedto a second controllable appliance; and in response to the firstcontrollable appliance detecting that the interface component of thefirst controllable appliance has been newly connected to a secondcontrollable appliance causing the first controllable appliance to placethe controlling device into a configuration mode of operation andperforming the further steps of: (a) using information obtained by thefirst controllable appliance from the second controllable appliance viathe interface component of the first controllable appliance to cause thecontrolling device to be configured to transmit a command from a commandcodeset for the purpose of determining if the second controllableappliance performs a functional operation; (b) determining by the firstcontrollable appliance via use of the interface component of the firstcontrollable appliance whether or not the second controllable applianceperforms the functional operation in response to the command beingtransmitted by the controlling device; and (c) when the firstcontrollable device determines that the second controllable appliancedid not perform the functional operation, repeating steps (a) through(c) and, when the first controllable device determines that the secondcontrollable appliance did perform the functional operation, causing bythe first controllable appliance the controlling device to exit theconfiguration mode of operation whereupon the controlling device will beconfigured to transmit one or more commands from the command codeset ofstep (a) in response to a subsequent activation of one or more inputelements of the controlling device.
 2. The method as recited in claim 1,wherein the information obtained by the first controllable appliancefrom the second controllable appliance via the interface component ofthe first controllable appliance comprises a type for the secondcontrollable appliance.
 3. The method as recited in claim 1, wherein theinformation obtained by the first controllable appliance from the secondcontrollable appliance via the interface component of the firstcontrollable appliance comprises a brand for the second controllableappliance.
 4. The method as recited in claim 1, wherein the interfacecomponent of the first controllable appliance comprises aHigh-Definition Multimedia Interface component.
 5. The method as recitedin claim 1, wherein detecting by the first controllable appliance thatan interface component of the first controllable appliance has beennewly connected to a second controllable appliance comprises sensing adisconnection followed by a reconnection of an interface cabling at theinterface component of the first controllable appliance.
 6. The methodas recited in claim 1, wherein detecting by the first controllableappliance that an interface component of the first controllableappliance has been newly connected to a second controllable appliancecomprises sensing a change in equipment identity data being received atthe interface component of the first controllable appliance.
 7. Themethod as recited in claim 1, wherein detecting by the firstcontrollable appliance that an interface component of the firstcontrollable appliance has been newly connected to a second controllableappliance comprises sensing a change in equipment appliance capabilitydata being received at the interface component of the first controllableappliance.
 8. The method as recited in claim 1, wherein detecting by thefirst controllable appliance that an interface component of the firstcontrollable appliance has been newly connected to a second controllableappliance comprises sensing an audio and/or video signal at theinterface component of the first controllable appliance when theinterface component of the first controllable appliance has a status ofbeing unused
 9. The method as recited in claim 1, wherein detecting bythe first controllable appliance that an interface component of thefirst controllable appliance has been newly connected to a secondcontrollable appliance comprises sensing a change in a bit rateassociated with a signal being received at the interface component ofthe first controllable appliance.
 10. The method as recited in claim 1,wherein detecting by the first controllable appliance that an interfacecomponent of the first controllable appliance has been newly connectedto a second controllable appliance comprises sensing a change in aformat associated with a signal being received at the interfacecomponent of the first controllable appliance.
 11. The method as recitedin claim 1, wherein using information obtained by the first controllableappliance from the second controllable appliance via the interfacecomponent of the first controllable appliance to cause the controllingdevice to be configured to transmit a command from a command codeset forthe purpose of determining if the second controllable appliance performsa functional operation comprises providing the command from the commandcodeset to the controlling device from the first controllable appliance.12. The method as recited in claim 1, wherein using information obtainedby the first controllable appliance from the second controllableappliance via the interface component of the first controllableappliance to cause the controlling device to be configured to transmit acommand from a command codeset for the purpose of determining if thesecond controllable appliance performs a functional operation comprisescausing by the first controllable appliance the controlling device toselect from a library of command codesets pre-stored in a memory of thecontrolling device the command from the command codeset.
 13. The methodas recited in claim 1, wherein the first controllable appliancecomprises an audio/visual switching device.
 14. The method as recited inclaim 1, wherein the first controllable appliance comprises a homeentertainment device having a network interface for receiving mediacontent from a source external to the home entertainment device.
 15. Themethod as recited in claim 14, wherein the second controllable appliancecomprises a television.
 16. The method as recited in claim 2, whereinthe command comprises a command transmitted via use of an infraredtransmitter of the controlling device.